package com.springboot.yu.projectinit.service.userinfo.impl;

import com.springboot.yu.projectinit.bean.userinfo.UserInfoBean;
import com.springboot.yu.projectinit.dao.IUserinfoDao;
import com.springboot.yu.projectinit.service.userinfo.IUserinfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
@Service
public class UserinfoServiceImpl implements IUserinfoService {
    @Autowired
    private IUserinfoDao userinfoDao;
    @Override
    public boolean doLogin(String userName, String userPsw) {
        List<UserInfoBean> users = userinfoDao.doLogin(userName, userPsw);
        return users.size()>0&users!=null;
    }

    @Override
    public List<UserInfoBean> selectUser(UserInfoBean userInfoBean) {
        return userinfoDao.selectUser(userInfoBean);
    }

    @Override
    public int saveOrUpdateUserInfo(UserInfoBean userInfoBean) {
        int i = 0;

        // 调用dao层进行数据库操作
        // 修改的时候 参数实体类 userinfobean 主键字段 userId 不为null
        // 新增的时候 参数实体类 userinfobean 主键字段 userId 为null
        // 通过判断 参数实体类的主键字段是否为null，可以确定是进行新增操作还是进行修改操作
        if (userInfoBean != null && userInfoBean.getUserid() != null) {
            // 修改操作
            i = userinfoDao.updateByPrimaryKeySelective(userInfoBean);
        } else {
            // 新增操作
            i = userinfoDao.insertSelective(userInfoBean);
        }
        return i;
    }

    @Override
    public int deleteUserInfoById(Integer userId) {
        return userinfoDao.deleteUserInfoById(userId);
    }

    @Override
    public UserInfoBean queryUserInfoById(Integer userid) {
        return userinfoDao.selectByPrimaryKey(userid);
    }
}
